#ifndef _GX3201-MAP_H_
#define _GX3201-MAP_H_


//base addrss

#define GX3201_PA_ROM     (0x00000000)
#define GX3201_PA_SDRAM   (0x00200000)
#define GX3201_PA_UART_1  (0x00400000)
#define GX3201_PA_UART_2  (0x00401000)
#define GX3201_PA_UART_3  (0x00402000)
#define GX3201_PA_UART_M  (0x00403000)   //Modem UART
#define GX3201_PA_RTC    
#define GX3201_PA_COUNTER (0x0040A000) 
#define GX3201_PA_INTC    (0x00600000)

#define IO_VA_BASE (0xA0000000)

#define GX3201_VA_ROM     (IO_VA_BASE + GX3201_PA_ROM)
#define GX3201_VA_SDRM    (IO_VA_BASE + GX3201_PA_SDRAM)  
#define GX3201_VA_UART_1  (IO_VA_BASE + GX3201_PA_UART_1)
#define GX3201_VA_UART_2  (IO_VA_BASE + GX3201_PA_UART_2)
#define GX3201_PA_UART_3  (IO_VA_BASE + GX3201_PA_UART_3)
#define GX3201_VA_UART_M  (IO_VA_BASE + GX3201_PA_UART_M) //Modem UART
#define GX3201_VA_RTC     (IO_VA_BASE + GX3201_PA_RTC)    
/* conter */
#define GX3201_VA_COUNTER_1 (IO_VA_BASE + GX3201_PA_COUNTER)
#define GX3201_VA_COUNTER_1_STATUS  (GX3201_VA_COUNTER_1 + 0x00)
#define GX3201_VA_COUNTER_1_VALUE   (GX3201_VA_COUNTER_1 + 0x04)
#define GX3201_VA_COUNTER_1_CONTROL (GX3201_VA_COUNTER_1 + 0x10)
#define GX3201_VA_COUNTER_1_CONFIG  (GX3201_VA_COUNTER_1 + 0x20)
#define GX3201_VA_COUNTER_1_PRE     (GX3201_VA_COUNTER_1 + 0x24)
#define GX3201_VA_COUNTER_1_INI     (GX3201_VA_COUNTER_1 + 0x28)
#define GX3201_COUNTER_1_INT_EN     (1<<1)
#define GX3201_COUNTER_1_EN         (1<<0)


/* interrupt */
#define GX3201_VA_INTC    (IO_VA_BASE + GX3201_PA_INTC)
#define GX3201_VA_INTC_NINT31_00    (GX3201_VA_INTC + 0x00)
#define GX3201_VA_INTC_NINT63_32    (GX3201_VA_INTC + 0x04)
#define GX3201_VA_INTC_NEN31_00     (GX3201_VA_INTC + 0x40)
#define GX3201_VA_INTC_NEN63_32     (GX3201_VA_INTC + 0x44)
#define GX3201_VA_INTC_NMASK31_00   (GX3201_VA_INTC + 0x50)
#define GX3201_VA_INTC_NMASK63_32   (GX3201_VA_INTC + 0x54)
#define GX3201_VA_INTC_SOURCE       (GX3201_VA_INTC + 0x60)





#endif /* _GX3201-MAP_H_ */
